Field of the Invention
The invention pertains to the fields of hardware and program testing. More particularly, the invention pertains to methods for automatically testing the hardware and programs of robotic systems.
Description of Related Art
A robotic system typically includes one or more robots, tools wielded by the robot, sensors that enable the position of the robot to be sensed or stepper motors that move the positioning joints in steps to discrete angles or locations, firmware built into a robot controller that causes the robot to move in response to commands delivered to the controller, and software that sends commands to the robot controller so as to cause the robot to perform desired operations.
Robotic systems are employed in automated manufacturing operations in many situations, for example in factories. Of these robotic systems, some are dedicated to a particular task that is performed repetitively to objects without any alteration in robot motion from object to object. Other robotic systems require alteration of the motion of a robot based on variations in object size, orientation, color, or other object characteristics.
When a robotic system is designed to perform a particular task on objects whose characteristics vary from object to object, software is required to control the robotic system to perform the task. This software can be complex, and it is often difficult to completely test the software to ensure that the robotic system performs exactly as required on all possible objects. To compound the problem, the designer and installer of the robotic system may be a third-party system-integrator who has only partial knowledge of the complexity of each of the components of the robotic system. Consequently, the integrator may not possess sufficient knowledge to test the system so as to guarantee proper system performance. As a result, system performance issues can occur that are difficult to associate with a particular element of the robotic system. If the robotic system fails to perform its tasks correctly, it can be difficult and expensive to determine and correct the cause of the failure.
In addition to problems related to initial development of the robotic system, as the robotic system ages, its accuracy may decline and eventually reach a point where it no longer performs as required, and it can be difficult to localize which element of the system is causing the degradation.
A pulse/echo layer thickness (PELT) gauge is a measurement device that makes accurate measurements of the thicknesses of coatings applied to manufactured materials. A robotic PELT system is a robotic system to which a PELT gauge is added. The PELT gauge is thus the tool that is manipulated by the robotic system for the purpose of measuring coatings on materials. The entire robotic PELT system thus includes of one or more industrial robots, a distance measurement sensor mounted to the end of the arm of each robot, computer programs that control the robots, and a PELT ‘tool’ mounted to the end of each robot arm.
The PELT tool held by each robot includes an ultrasonic transducer. A primary objective of the robotic system is to ensure that the transducer is placed onto the surface of a test material with the front face of the transducer flat against the surface. In order for this to occur:
1. The robot needs to move accurately through three-dimensional space,
2. The distance sensor needs to be properly calibrated, and
3. The computer programs that control the robots need to be proper for the task and free of bugs.
U.S. Pat. No. 4,815,006, entitled “Method and Device for Calibrating a Sensor on an Industrial Robot” and issued to Andersson et al. on Mar. 21, 1989, describes a welding robot that uses a sensor for detecting a weld joint. The patent discloses a method for determining the relationship between the sensor coordinate system and the robot coordinate system in a manner that requires minimal manual operations. A calibration test object is used, and a calibration software program moves the sensor about the calibration object in order to determine the relationship between the sensor coordinates and the robot coordinates.
U.S. Pat. No. 4,967,370, entitled “Robot and Sensor Error Determination System” and issued to Stern et al. on Oct. 30, 1990, is similar to U.S. Pat. No. 4,815,006 in that both describe sensors on a robot, in this case a “vision” sensor, and the need to relate the sensor coordinate space to the robot coordinate space. The patent describes a test process that compares current sensor data with previously stored baseline or reference data. When differences are detected in the relationship between the sensor apparatus and the robot, the patent describes how to determine the source of the differences/error, such as robot positioning error or a change in orientation of the sensing apparatus mounted to the robot.
U.S. Pat. No. 6,571,148, entitled “System for Automatically Certifying the Accuracy of a Manufacturing Machine and Associated Methods” and issued to Wunder on May 27, 2003, discloses certifying, or checking the accuracy of, a computer-controlled manufacturing machine. This patent teaches making comparisons of successive outputs of a manufacturing machine. The accuracy and performance of the manufacturing machine is evaluated by monitoring and comparing the successive outputs of the manufacturing machine.
U.S. Pat. No. 7,050,937, entitled “Performance Measurement System” and issued to Lee on May 23, 2006, describes a software program for assessing the performance of a robotic semiconductor wafer handling system. The software requires a large amount of operator input and is thus neither automatic nor autonomous.
The above references are hereby incorporated by reference herein.